// 将下面异步代码使用Promise的方式改进
// setTimeout(function() {
//   var a = 'hello'
//   setTimeout(function() {
//     var b = 'lagou'
//     setTimeout(function() {
//       var c = 'I love U'
//       console.log(a + b + c)
//     }, 10)
//   }, 10)
// }, 10)

new Promise((resolve, reject) => {
  setTimeout(() => {
    const a = 'hello'
    resolve(a)
  }, 10)
}).then(val => {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      const b = 'lagou'
      resolve(val + b)
    })
  })
}).then(val => {
  setTimeout(function() {
    const c = 'I love U'
    console.log(val + c)
  }, 10)
})